/**
 * Copyright (c) 2007,中企动力华南研发中心
 * All rights reserved.
 */
package com.ce.pms.common.service.impl;

import java.util.Date;
import java.util.List;

import com.ce.pms.common.dao.ISysrefcodeDao;
import com.ce.pms.common.model.SysrefcodeDO;
import com.ce.pms.common.service.ISysrefcodeService;
import com.ce.util.BlankUtil;
import com.ce.webframework.exception.BizLayerException;

/**
 * 功能描述：系统参数表服务类
 * @author 罗军林 创建日期：2008-5-8
 */
public class SysrefcodeServiceImpl implements ISysrefcodeService {
	private ISysrefcodeDao sysrefcodeDao;

	public ISysrefcodeDao getSysrefcodeDao() {
		return sysrefcodeDao;
	}

	public void setSysrefcodeDao(ISysrefcodeDao sysrefcodeDao) {
		this.sysrefcodeDao = sysrefcodeDao;
	}

	public List querySysrefCodesByCode(String code) {
		if(code==null) throw new BizLayerException("The 'code' attrib is not null!");
		return sysrefcodeDao.querySysrefCodesByCode(code);
	}
	/**
	 * 功能描述:查询指定CODE类型的参数列表<br>
	 * @param code
	 * @return
	 * Create author:yixianjian <br>
	 * Create on:2009-1-4  <br>
	 */
	public List querySysrefCodesByCode(List<String> code){
		return sysrefcodeDao.querySysrefCodesByCode(code);
	}
	public List querySysrefCodesByCode(String code,String filterStr) {
		if(code==null) throw new BizLayerException("The 'code' attrib is not null!");
		if(filterStr==null) throw new BizLayerException("The 'code' attrib is not null!");
		return sysrefcodeDao.querySysrefCodesByCode(code,filterStr);
	}

	/**
	 *
	 * 功能描述: 通过id得到一个系统字典参数
	 *
	 * @author 付湘辉
	 * Created on:2008-6-17
	 *
	 * 修改原因：
	 * @param sysrefcodeId
	 * @return SysrefcodeDO 返回结果
	 */
	public SysrefcodeDO findSysrefcodeById(Long sysrefcodeId){
		if (BlankUtil.isBlank(sysrefcodeId)) {
			return null;
		}
		return this.sysrefcodeDao.findById(sysrefcodeId);

	}

	/**
	 * Function:获得服务器的时间
	 * @param
	 * @return
	 * Create author:xuhaidui
	 * Create on:2008-6-19
	 * Edit author:
	 * Edit on:
	 * Why:
	 */
	public Date getDate(){
		return sysrefcodeDao.getDate();
	}


	/**
	 *
	 * 功能描述: 根据系统参数代码查询系统参数表SYS_REF_CODE 取得交房标准列表信息
	 *
	 * @author 付湘辉
	 * Created on:2008-6-30
	 *
	 * 修改原因：
	 * @param standardCode
	 * @return List 返回结果
	 */
	public List getHouseStaList(String standardCode){
		return this.querySysrefCodesByCode(standardCode);
	}

	/**
	 * 功能描述: 根据code与value获取系统参数信息 <br>
	 * @param code
	 * @param value
	 * @return
	 * Create author:yandawei <br>
	 * Create on:2008-9-10  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public SysrefcodeDO getSysrefCodesByCode(String code, String value) {
		return sysrefcodeDao.getSysrefCodesByCode(code, value);
	}
	/**
	 * 功能描述:通过ID删除参数自定义表中的记录<br>
	 * 目前是在装修业务设置的装修审批人中有使用 -- 怪怪的(参数自定义表中的数据删除)
	 * Create author:yixianjian <br>
	 * Create on:2009-1-8  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public void deleteSysrefCodesById(Long keyword){
		sysrefcodeDao.deleteObjectById(keyword);
	}
	/**
	 * 功能描述:  <br>
	 * @param sysrefcodeDO
	 * Create author:yixianjian <br>
	 * Create on:2009-1-8  <br>
	 */
	public void addSysrefCodes(SysrefcodeDO sysrefcodeDO){
		sysrefcodeDao.saveObject(sysrefcodeDO);
	}
}
